using BackData;
using Domain.DTOs.RBAC;
using MediatR;

namespace Team.API.Applocation.Command.Users.Roles
{
    /// <summary>
    /// 更新角色命令
    /// </summary>
    public class UpdateRoleCommand : IRequest<APIResult<RoleDTO>>
    {
        /// <summary>
        /// 角色ID
        /// </summary>
        public long Id { get; set; }

        /// <summary>
        /// 角色名称
        /// </summary>
        public string? RoleName { get; set; }

        /// <summary>
        /// 角色描述
        /// </summary>
        public string? Description { get; set; }

        /// <summary>
        /// 排序号
        /// </summary>
        public int? Sort { get; set; }

        /// <summary>
        /// 角色状态
        /// </summary>
        public int? Status { get; set; }

        /// <summary>
        /// 数据权限范围
        /// </summary>
        public int? DataScope { get; set; }

        /// <summary>
        /// 自定义部门权限
        /// </summary>
        public string? DeptIds { get; set; }

        /// <summary>
        /// 角色类型
        /// </summary>
        public int? RoleType { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
    }
}
